-- +goose Up
-- +goose StatementBegin
create table if not exists exchangerates
(
    id       integer generated by default as identity primary key,
    period   timestamptz not null,
    currency text        not null
    constraint exchangerates_currency_check
    check (currency <> ''::text),
    rate     float       not null
    );

comment on table exchangerates is 'Курсы валют по периодам';

-- Индекс по валюте и дате для ускорения поиска курсов валют на определенные дату/время.
create unique index if not exists exchangerates_currency_period
    on exchangerates (currency, period);
-- +goose StatementEnd

-- +goose Down
-- +goose StatementBegin
drop index exchangerates_currency_period;
DROP TABLE IF EXISTS "exchangerates";
-- +goose StatementEnd